import http from 'http'
import cluster from 'cluster'
import {cpus} from 'os'

const numCUPs=cpus().length

// js是单线程语言 -> node 就可以多线程
// 多个进程在多个cpu里运行，代码都是一样的

// console.log(cluster.isPrimary)
if(cluster.isMaster){
    // 主进程
    console.log(`master ${process.pid} is running`)
    for(let i=0;i<numCUPs;i++){
        // 子进程 通信
        cluster.fork()
    }
}
else{
    http.createServer((req,res)=>{
        res.writeHead(200)
        // res.end('hello world\n'+process.pid) // 请求响应无状态，与websocket相对
        res.end(`hello world\n ${process.pid}`)
    }).listen(8080)
}

